1: | active(f(g(X),Y)) | → mark(f(X,f(g(X),Y))) | |
2: | active(f(X1,X2)) | → f(active(X1),X2) | |
3: | active(g(X)) | → g(active(X)) | |
4: | f(mark(X1),X2) | → mark(f(X1,X2)) | |
5: | g(mark(X)) | → mark(g(X)) | |
6: | proper(f(X1,X2)) | → f(proper(X1),proper(X2)) | |
7: | proper(g(X)) | → g(proper(X)) | |
8: | f(ok(X1),ok(X2)) | → ok(f(X1,X2)) | |
9: | g(ok(X)) | → ok(g(X)) | |
10: | top(mark(X)) | → top(proper(X)) | |
11: | top(ok(X)) | → top(active(X)) | |
12: | ACTIVE(f(g(X),Y)) | → F(X,f(g(X),Y)) | |
13: | ACTIVE(f(X1,X2)) | → F(active(X1),X2) | |
14: | ACTIVE(f(X1,X2)) | → ACTIVE(X1) | |
15: | ACTIVE(g(X)) | → G(active(X)) | |
16: | ACTIVE(g(X)) | → ACTIVE(X) | |
17: | F(mark(X1),X2) | → F(X1,X2) | |
18: | G(mark(X)) | → G(X) | |
19: | PROPER(f(X1,X2)) | → F(proper(X1),proper(X2)) | |
20: | PROPER(f(X1,X2)) | → PROPER(X1) | |
21: | PROPER(f(X1,X2)) | → PROPER(X2) | |
22: | PROPER(g(X)) | → G(proper(X)) | |
23: | PROPER(g(X)) | → PROPER(X) | |
24: | F(ok(X1),ok(X2)) | → F(X1,X2) | |
25: | G(ok(X)) | → G(X) | |
26: | TOP(mark(X)) | → TOP(proper(X)) | |
27: | TOP(mark(X)) | → PROPER(X) | |
28: | TOP(ok(X)) | → TOP(active(X)) | |
29: | TOP(ok(X)) | → ACTIVE(X) | |